#include "processBar.h"


const  char *lable = "|/-\\";

char bar[NUM] = {0};

//颜色
#define RED  "\033[0;32;31m"
#define NONE "\033[m"

//V2:是如何被调用的

void processbar(int rate)
{
    if(rate < 0 || rate > 100)
        return ;

    int len = strlen(lable);
    printf(RED"[%-100s]"NONE"[%d%%][%c]\r",bar,rate,lable[rate%len]);//没有\n，就没有立即刷新，因为显示器模式是行刷新
    fflush(stdout); 
    bar[rate++] = BODY;
    if(rate < 100)  
        bar[rate] = RIGHT;
}

void initbar()
{
    memset(bar,'\0',sizeof(bar));
}








//V1
//void processbar(int speed)
//{
//    int cnt = 0;
//    char bar[NUM];
//    memset(bar,'\0',sizeof(bar));
//    int len = strlen(lable);
//    while(cnt<=TOP)
//    {
//        printf("[%-100s][%d%%][%c]\r",bar,cnt,lable[cnt%len]);//没有\n，就没有立即刷新，因为显示器模式是行刷新
//        fflush(stdout);
//        bar[cnt++] = BODY;
//        if(cnt < 100)
//            bar[cnt] = RIGHT;
//        usleep(speed);
//    }
//    printf("\n");
//}
//







